################################################################################
#
#    Licensed to the Apache Software Foundation (ASF) under one or more
#    contributor license agreements.  See the NOTICE file distributed with
#    this work for additional information regarding copyright ownership.
#    The ASF licenses this file to You under the Apache License, Version 2.0
#    (the "License"); you may not use this file except in compliance with
#    the License.  You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS,
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#    See the License for the specific language governing permissions and
#    limitations under the License.
#
################################################################################

#
# This file lists Karaf default settings for this particular version of Karaf.
# For easier maintenance when upgrading Karaf and to better document which
# default values have changed, it is recommended to place any changes to
# these values in a custom.properties file in the same folder as this file.
# Each value specified in custom.properties will override the default value
# here.
#

#
# Properties file inclusions (as a space separated list of relative paths)
# Included files will override the values specified in this file
# NB: ${includes} properties files are mandatory, it means that Karaf will not start
# if the include file is not found
#
${includes} = jre.properties custom.properties

#
# Properties file inclusions (as a space separated list of relative paths)
# Included files will override the values specified in this file
# NB: ${optionals} properties files are optionals, it means that Karaf will just
# display a warning message but the bootstrap will be performed
#
# ${optionals} = my.properties

#
# Framework selection properties
#
karaf.framework=felix

#
# Location of the OSGi frameworks
#
karaf.framework.equinox=mvn\:org.eclipse.tycho/org.eclipse.osgi/3.10.101.v20150820-1432
karaf.framework.felix=mvn\:org.apache.felix/org.apache.felix.framework/5.6.2

#
# Framework config properties.
#
org.osgi.framework.system.packages= \
 org.osgi.dto;version="1.0",\
 org.osgi.resource;version="1.0",\
 org.osgi.resource.dto;version="1.0";uses:="org.osgi.dto",\
 org.osgi.framework;version="1.8",\
 org.osgi.framework.dto;version="1.8";uses:="org.osgi.dto",\
 org.osgi.framework.hooks.bundle;version="1.1";uses:="org.osgi.framework",\
 org.osgi.framework.hooks.resolver;version="1.0";uses:="org.osgi.framework.wiring",\
 org.osgi.framework.hooks.service;version="1.1";uses:="org.osgi.framework",\
 org.osgi.framework.hooks.weaving;version="1.1";uses:="org.osgi.framework.wiring",\
 org.osgi.framework.launch;version="1.2";uses:="org.osgi.framework",\
 org.osgi.framework.namespace;version="1.1";uses:="org.osgi.resource",\
 org.osgi.framework.startlevel;version="1.0";uses:="org.osgi.framework",\
 org.osgi.framework.startlevel.dto;version="1.0";uses:="org.osgi.dto",\
 org.osgi.framework.wiring;version="1.2";uses:="org.osgi.framework,org.osgi.resource",\
 org.osgi.framework.wiring.dto;version="1.2";uses:="org.osgi.dto,org.osgi.resource.dto",\
 org.osgi.service.condpermadmin;version="1.1.1";uses:="org.osgi.framework,org.osgi.service.permissionadmin",\
 org.osgi.service.packageadmin;version="1.2";uses:="org.osgi.framework",org.osgi.service.permissionadmin;version="1.2",\
 org.osgi.service.resolver;version="1.0";uses:="org.osgi.resource",\
 org.osgi.service.startlevel;version="1.1";uses:="org.osgi.framework",\
 org.osgi.service.url;version="1.0",\
 org.osgi.util.tracker;version="1.5.1";uses:="org.osgi.framework",\
 org.apache.karaf.version;version="4.0.9",\
 org.apache.karaf.jaas.boot.principal;uses:=javax.security.auth;version="4.0.9",\
 org.apache.karaf.jaas.boot;uses:="javax.security.auth,javax.security.auth.callback,javax.security.auth.login,javax.security.auth.spi,org.osgi.framework";version="4.0.9",\
 ${jre-${java.specification.version}}

#
# Extra packages appended after standard packages
#
org.osgi.framework.system.packages.extra = \
    org.apache.karaf.branding, \
    org.apache.karaf.jaas.boot.principal, \
    org.apache.karaf.jaas.boot, \
    sun.misc, \
    org.apache.karaf.diagnostic.core;uses:=org.osgi.framework;version=4.0.9, \
    org.apache.karaf.diagnostic.core.common;uses:=org.apache.karaf.diagnostic.core;version=4.0.9, \
    org.apache.karaf.jaas.boot.principal;uses:=javax.security.auth;version=4.0.9, \
    org.apache.karaf.jaas.boot;uses:=\"javax.security.auth,javax.security.auth.callback,javax.security.auth.login,javax.security.auth.spi,org.osgi.framework\";version=4.0.9

org.osgi.framework.system.capabilities= \
 ${eecap-${java.specification.version}}, \
 osgi.service;effective:=active;objectClass=org.osgi.service.packageadmin.PackageAdmin, \
 osgi.service;effective:=active;objectClass=org.osgi.service.resolver.Resolver, \
 osgi.service;effective:=active;objectClass=org.osgi.service.startlevel.StartLevel, \
 osgi.service;effective:=active;objectClass=org.osgi.service.url.URLHandlers

eecap-1.8= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8"
eecap-1.7= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7"
eecap-1.6= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6"
eecap-1.5= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5"
eecap-1.4= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4"
eecap-1.3= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3"
eecap-1.2= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1", \
 osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2"

#
# javax.transaction is needed to avoid class loader constraint violation when using javax.sql
#
org.osgi.framework.bootdelegation = \
    com.sun.*, \
    javax.transaction, \
    javax.transaction.*, \
    javax.xml.crypto, \
    javax.xml.crypto.*, \
    sun.*, \
    org.apache.karaf.jaas.boot, \
    org.apache.karaf.jaas.boot.principal

# jVisualVM support
# in order to use Karaf with jvisualvm, the org.osgi.framework.bootdelegation property has to contain the org.netbeans.lib.profiler.server package
# and, so, it should look like:
#
# org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.jaas.boot.principal,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom,org.netbeans.lib.profiler.server
#
# YourKit support
# in order to use Karaf with YourKit, the org.osgi.framework.bootdelegation property has to contain the com.yourkit.* packages
# and, so, it should look like:
#
# org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.jaas.boot.principal,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom,com.yourkit.*
#

#
# OSGi Execution Environment
#
org.osgi.framework.executionenvironment=J2SE-1.7,JavaSE-1.7,J2SE-1.6,JavaSE-1.6,J2SE-1.5,JavaSE-1.5,J2SE-1.4,JavaSE-1.4,J2SE-1.3,JavaSE-1.3,J2SE-1.2,,JavaSE-1.2,CDC-1.1/Foundation-1.1,CDC-1.0/Foundation-1.0,J2ME,OSGi/Minimum-1.1,OSGi/Minimum-1.0

#
# Set the parent classloader for the bundle to the classloader that loads the Framework (i.e. everything in lib/*.jar)
#
org.osgi.framework.bundle.parent=framework

#
# Definition of the default bundle start level
#
org.osgi.framework.startlevel.beginning=100
karaf.startlevel.bundle=80

#
# The location of the Karaf shutdown port file used to stop instance
#
karaf.shutdown.port.file=${karaf.data}/port

#
# The location of the Karaf pid file
#
karaf.pid.file=${karaf.base}/karaf.pid

#
# Configuration FileMonitor properties
#
felix.fileinstall.enableConfigSave = true
felix.fileinstall.dir    = ${karaf.etc}
felix.fileinstall.filter = .*\\.cfg
felix.fileinstall.poll   = 1000
felix.fileinstall.noInitialDelay = true
felix.fileinstall.log.level = 3
felix.fileinstall.log.default = jul

# Use cached urls for bundle CodeSource to avoid
# problems with JCE cached informations, see KARAF-3974
felix.bundlecodesource.usecachedurls = true

#
# Delay for writing the framework state to disk in equinox
# must be  >= 1000 and <= 1800000
#
eclipse.stateSaveDelayInterval = 1000

#
# OBR Repository list
# This property will be modified by the obr:addUrl and obr:removeUrl commands. 
#
obr.repository.url = 

#
# Start blueprint bundles synchronously when possible
#
org.apache.aries.blueprint.synchronous=true

#
# Do not weave all any classes by default
#
org.apache.aries.proxy.weaving.enabled=

#
# mvn url handler requires config instance configuration
#
org.ops4j.pax.url.mvn.requireConfigAdminConfig=true

#
# Don't delay the console startup. Set to true if you want the console to start after all other bundles
#
karaf.delay.console=false
